Во-первых, что есть "локальный таймер" ? Это таймер записанный в локальную переменную?
Во-вторых, зачем тебе точка, если ты используешь XY ? Работай с ними
В-третьих, да. Использование в течении всей игры одной заранее созданной точки вызывает меньше нагрузки чем постоянно создание и удаление новых (кто-то там доказывал на примере и цифрами что от ремувнутых точке всё равно остаётся шлак в памяти...)
Вот. Есть текст про описание движения как я понял (вот в чем разница между конным и пешим пока тоже не понял, интересует вот, что дает конный)
Эти паффинги, и типы движения взаимосвязаны. У некоторых есть баги, которыми можно воспользоваться. Например, чтобы летающие юниты игнорили ландшафт и летели прямо (вот на клифах может быть криво). На форуме дофига такого. Также можно сделать нелетающих летающими, дать сфинкс или превратиться в ворона (тоже баг) Ну и так далее
Отлично, значит мы можем однозначно соотнести номер игрока с юнитом в массиве?
переключившихся в летающий режим героев добавляем в глобальную группу
запускаем таймер на малом периоде, что-то около 0.04, который перебирает всех в группе и выполняет смещение к взятой из массива точке со скоростью движения героя (тут можно экспериментировать с разными алгоритмами движения, главное что все данные мы можем легко получить из массива по номеру игрока которому принадлежит юнит)
отслеживаем все приказы для героев в состоянии полета и на основе этого запоминаем текущую точку куда юнит должен двигаться и прочие данные, записываем эти данные в массив
при отключении полета убираем героя из группы и перестаем отслеживать его приказы
А, т.е. в карте уже есть системы триггерного движения? Значит самое время унифицировать их в одну, чтобы одна и та же система управляла и полетом и физикой и другими видами триггерного движения.
есть событие - юнит получает урон. в нём отслеживается как жертва, так и наносящий урон. можно хоть через хэш, хоть через структуру Юнита записывать всё, что угодно. Кто от кого конкретно сколько получил урона, кто кому сколько нанёс, сколько провисел на ком-то бафф яда и т.п. (Сначала был loop, а теперь периодический триггер). Каждые N секунд, перебираешь всех юнитов в массиве или списке, и отслеживаешь всё, что надо.
Структура - Unit. У неё есть двойной список с юнитами и уроном от яда (полученным или нанесённым - зависит от того, у кого будет этот список - у жертв или у тех, кто наносит яд). Типа DoubleList. В DoubleList есть элементы DoubleElement. В каждом таком элементе записаны unit и real (урон от яда от этого юнита). При получении урона от яда перебирается список, если юнит уже есть, урон от него (или ему) прибавляется. Если нет, то создаётся новый элемент с новым юнитом.
Периодически у нужных юнитов эти списки перебираются. Всё.
И кстати, я делал эту спелку, и всё работало, потом зашел снова, и не работает.
У тебя весь спелл мягко говоря корявый. Ты записываешь юнита как "воронку", которая каждые 0.5 сек будет проверять всех юнитов в очень малом радиусе от себя, и как только хоть кто-то попадётся - ты отключаешь триггер и сдвигаешь юнитов непонятно куда... (тех которые был вокруг воронки в момент каста)
Что ты в идеале хотел сделать? схлопывание юнитов при приближении к эпицентру? ли что?
Короче порылся в ХГМ, потыкал, все испробывал, и сам нашел ответ, вот несколько моментов для того, чтобы заработал:
Требуется установленный Warcraft 3: The Frozen Throne последней версии 1.26a. Скачайте нормальный варкрафт 3, а то попадаются урезанные или нерабочие версии. Лучше оригинальную версии приобрести, и обновить. Хотя пиратки тоже неплохи. Вот использую сборкой от R.G. Mechanics
Путь к программе НЕ ДОЛЖЕН содержать русских символов
Совершайте установку в отдельную от Warcraft 3 папку
Рекомендуется приостановить антивирусные программы до установки, потом выполнить установку, затем добавить папку c JNGP в исключения, и потом только снова включить антивирусы. Эта программа вторгается в процесс worldedit.exe, поэтому может считаться вредоносной
Не трогайте файл worldedit121.exe, он должен быть и в папке игры и в папке JNGP
Сначала "Сохранить карту", только потом "Проверка карты", а ещё иногда бывает лучше сохранять пару раз
Выше, это стандартное описание для работы. Если не сработает, пробуем вот, что:
Выставляем оптимальные настройки к JNGP, указанные на скрине (см. ссылку) xgm.guru/forum/showthread.php?t=13118 Обычно, эти настройки должны быть изначально после установки JNGP (ну мало ли пригодятся)
Теперь суть моей проблемы (не знаю, что из этих ниже пунктов сработало, но сработало):
Я установил игру и JNGP на рабочий стол. Потому что на диске С, в папках типа Program Files.(x86) и др. блокирует браундмер. Обычно требует назойливо для работы права администратора, очень раздражает. Но сомневаюсь, что заработало из-за этого. Раньше не мешало нисколько.
Запустить JNGP в режим совместимости. Заходим в свойство exe-шника. Поставил семерку.
Если UMS изначально включен, то выключить его и включить (Enable UMS). Потом перезапустить WE. Скорее всего из-за него.
Из-за UMS также бывают ошибки: могут выскачить 2-3 окна : что отсутствует TriggerClearActions и layerAll. Когда пропускаешь эти окна, просто нажав на ок, затем появляется ошибка с памятью и уже потом закрывается редактор. Происходят такие ошибки, если пытаешься открыть обычным редактором карту, отредактированную в JNGP. Такая ошибка происходит, если некорректно настроен UMS (выкл. потом вкл.). Такая ошибка происходит, если открыть обычным редактором взломанную карту, которая наверняка сделана в UMS и использует необычный jass и прочие преимущества JNGP. Ошибки с UMS могут иногда происходить, поэтому скорее всего пункт 10 поможет
Если UMS перестает работать (некорректно работает), а 10 пункт не помогает. То есть плагин UMS по каким-то причинам не запускается, а JNGP стоит галочка напротив UMS (говорит, что включен). Короче узнать, что он запущен, можно при открытий редактора вместо стандартного окна выскакивает окно UMS. Если не выскакивает, надо попробовать завести снова работать. Плагин может по каким-то причинам сломаться (один раз баловался в настройках JNGP). Пробуйте потом удалить JNGP и потом заново переустановить. Или выкл. и вкл, UMS затем выйти из jngp, удалить и заново переустановить
Событие Event Units in range ( какое там нужно аое, ставишь)
Условие ( Enterning unit is - ну не здание, живое и так далее, критерии отбора по вкусу)
Действие (твои действия)
необязательно делать два триггера, можно сделать 1 с этим событием с условием (Владелец (Переключающий юнит)) равно Нейтрально-враждебный а остальные условия поместить в отдельный if/then/else multiple conditions, хз как называется этот пункт в русском редакторе, но он где-то в первых 15 строчках.
Хотя знаешь мне лень писать, вот так можно сделать в твоём случае
Если ты хочешь посылать куда-то юниты, то лучше давай их другому игроку, не нейтрально-враждебному
А почему бы при поднятии предмета не запускать периодический таймер который будет проверять в каком слоте предмет, а при выбрасывании убирать эффект и останавливать таймер
В русских триггерах переключающий юнит (в англ. триггерах triggering unit) - это юнит, на которого ссылается триггер. Эти все переменные зависят от событии. Вот в событий - юнит умирает, две переменные - это умирающий юнит (Dying unit), и убийца (Kiling unit). Конкретно триггер ссылается на умирающего юнита, то есть здесь
умирающий юнит = переключающий
Есть много похожих событий, где встречается переключающий.
Например, в событий "юнит применяет способность" выделяются две переменные "кастер" (англ. Casting unit) и "юнит-цель" (Target unit of ability being cast). Конкретно триггер ссылается на кастера.
кастер = переключающий
или например в событий юнит - получил приказ
выделяется переменная "юнит-получил приказ" (ordered unit) и цель (если есть, а то есть приказы без цели)
юнит, получивший приказ = переключающий
часто удобно еще владельца переключающего юнита находить
обычно пишут владелец переключающего юнита, а надо бы trigger player (переключающий игрок)
как называется юнит который начал строительство?
я хочу убить юнита который начал строительство
в событии - юнит начинает строительство
есть переменная : строящее здание (Consrtucting structure)
в событии - юнит завершает строительство
переменная завершенная постройка (Consrtuctied structure).
Конкретно события ссылаются на строящее здание, то есть переключающий юнит = здание. А вот строителя нельзя найти.
и мне нужно чтобы здание, строительство которого было начало мгновенно построилось!
но когда я ставлю триггерно
Боевая единица- Определить [Сооружает структуру] процесс строительства [100%]
у меня действительно ставиться полоса строительства как 100% но само строительство не заканчивается. :(
получается стоит стройка здания которое построилось на 100%
Ты про ту функцию
native UnitSetConstructionProgress takes unit whichUnit, integer constructionPercentage returns nothing
Боевая единица - Set Building Construction Progress
чего-то тоже у меня не работает эта функция совсем, может не правильно юзаю, на форуме мало что нашел.
чего-то тоже у меня не работает эта функция совсем, может не правильно юзаю, на форуме мало что нашел.
Короче заработало.
Если рабочий будет строить, а ты в это время воспользуешься этой функции по "событию - юнит начинает строительство" ничего не сработает. Странно как-то. Нужно добавлять 100% после некоторого времени. Спустя 0,01 секунду.
Убрать рабочего после того как в начале возведет фундамент, так да, полоска в 100% то останется =(( Полоска убирается, если рабочий придет и достроит (хотя уже достраивать нечего =( , полное хп )
У рабочего есть способность "ремонтировать". Там надо смотреть.
Советую так:
Юнит - начинает строительство
действие - ждать 0,01 секунд
действие - Боевая единица- Определить [Сооружает структуру] процесс строительства [100%]
следующий момент
юнит - завершает строительство
действие - удалить или убить строителя
Кстати в событий "юнит завершает строительство" и "юнит завершает строительство" нет ссылки на строителя. Только на построенное только что здание. Но эта проблема решаема. Нужно отслеживать приказ строителя, только на форуме одному делал наработку найти не могу, не пойму как делал
как отследить строителя, это делается по приказу
851994 (buildmenu): Приказ (без указания цели), открывающий меню строительства воина, способного возводить здания.
событие - юнит отдал приказ без цели
условие - целочисленное (id приказ) = 851994
приказ 851994 почему-то не отслеживается, он лишь позволяет открыть меню строительства. не катит. пробую тогда потом другое выбираем постройку в меню строительства, и строитель бежит строить.
событие - юнит отдал приказ цель
условие - классификация цели = здание или дерево
казалось бы все так, но недостаток в том, что он может за это время, пока бежит к точке строительства, передумать по желанию игрока. Поэтому надо смотреть, заранее там кучу событий и условии, короче проверок что если там пойдет не так
событие - юнит отдал приказ цель
условие - приказ = repair
можно использовать приказ repair. Короче от способности "ремонтировать" При строительстве и ремонте у орков и людей есть такая фишка. А вот у эльфов нет. Недостаток конечно. И еще рабочий может пойти ремонтировать здание, однако тут срабатывает приказ "smart", который равнозначен "repair". Когда строит/ремонтирует работник можно выяснить текущий приказ. У работника в этот может приказ repair а у светлячка при строительстве id здания, а при ремонте у светлячка id от "обновление".
Для начала создаешь способность вампиризма, например с 4 уровнями.
1 уровень - 25%
2 уровень - 50%
3 уровень - 75%
4 уровень - 100% вампиризма.
Если нынешнее здоровье героя деленное на максимальное здоровье этого же героя < 0,25 - делаем четвертый уровень способности.
Если нынешнее здоровье героя деленное на максимальное здоровье этого же героя < 0,50 - даем третий уровень способности
И т.д.
Миксы нужно распространять с картой, что вызывает проблемы.
Хак Game.dll - распознаётся как чит, тоже не используется.
Надеемся на скорый выход патча 1.27б где снимут лимиты, и повысят скорость скачивания карт без помощи хост ботов.
Мб раньше выйдет ретурн баг от Лича, там вариант который был раньше - пишем вирус, который подгружает микс из сети юзеру и самовыпиливается. (не для рядовых юзеров).
После удаления этой кнопки лично у меня вылетов больше не было. Может багованная модель или попкорновский эффект, а может триггер, который на ней висит, хз.
Попробуй выделить весь декор и поднять с помощью CTRL+PageUp, авось с отриательной z работать не хотит.
На кнопке поднятие попробовал, всё равно вылетает
Updt. Снёс всё попкорн эмиттеры с модели кнопки, и переимпортировал в карту. Вроде работает
После создания, погодный эффект нужно занести в переменную и включить его (там есть действие). Когда нужно изменить погодный эффект, то старый нужно удалить, для этого мы его занесли в переменную.
система урона + ледяные стрелы = при получении урона, идет проверка на бафф, удаляешь бафф и, либо кастуешь даммиком способность кислотная бомба или духовное пламя с отриц. значением минус в том что бафф будет висеть как положительный. Либо под таймером даешь даешь способность повышения защиты с отриц. значением.
Учитывая что 21 век, систему урона найти и поставить, не составит труда.
Только триггерно. У демонической силы только модель эффекта на целях и анимация атаки могут быть кастомными. И то на счет анимации может быть не так очевидно.
Astra, очень багано
так как после последней атаки может многое изменится
так же урон при событие юнит получает урон зависит от брони и прочих резистов
если юнит с уроном 100 нанёс удар по врагу с физ резистом 50% а потом получил бафф/предмет на +100 урона то скилом нанесёт 50 урона хотя должен был бы нанести 200
тут нужно юзать бд
при касте скила брать из бд начальный урон юнита, бонусы предметов и бонусы всех бафов
тема кстати уже много раз поднималась
и каждый раз все заканчивалось тем что афтар забивал на подобную систему либо писал "вы все нубы/тролли и не знаете/не хотите сказать как сделать это легко и просто"
ибо подобная система требует кучи кода и как минимум 30 прочтённых статей по jass
вот статья о бд
Осуществляешь импорт по неправильному пути. Например (я пробовал для орков), "Sound\Music\mp3Music\Orc1.mp3", "Sound\Music\mp3Music\Orc2.mp3", "Sound\Music\mp3Music\Orc3.mp3", "Sound\Music\mp3Music\Orc1X.mp3" и т.д. Все стандартные треки были заменены на мой. Чтобы корректно заменять музыку на карте, нужно знать пути импорта. Путь к оригинальным трекам можно посмотреть в mpq-архиве через архиваторы.
Николай17, когда создаётся лобби карты, вызывается специальная функция config. vJass позволяет заменить её содержимое. оригинальное содержимое можно узнать через Редактор ландшафта - Файл - Экспортировать скрипт карты.
Тебе нужно сделать вот что:
Узнать оригинальное содержимое.
Напиши действие по старту твоей музыки. Затем сконвертируй это в код (Редактировать - сконвертировать в кастом код). Найди строчку этого действия.
В секции кастом кода (иконка карты в редаторе триггеров) написать вот это.
//! inject config
Тут вставить оригинальное содержимое
Тут вставить код старта музыки
//! endinject
При каждом изменении настроек игроков менять инжект.
Создаёшь массив юнитов и запихиваешь в него крипов. Создаёшь массив точек и запихиваешь в него позиции соответствующих крипов. Делаешь триггер, который сверяет убитого с массивом юнитов и создаёт нового в соответствующей точке из второго массива.
Если тебе нужно, чтобы юниты воскрешались через какое-то время, то тебе придется изучить основы jass, а именно - узнать, как работают локальные переменные. Создаёшь локальный номер убитого, ждешь нужное время и воскрешаешь юнита с локальным номером.
Создаёшь массив юнитов и запихиваешь в него крипов. Создаёшь массив точек и запихиваешь в него позиции соответствующих крипов. Делаешь триггер, который сверяет убитого с массивом юнитов и создаёт нового в соответствующей точке из второго массива.
Если тебе нужно, чтобы юниты воскрешались через какое-то время, то тебе придется изучить основы jass, а именно - узнать, как работают локальные переменные. Создаёшь локальный номер убитого, ждешь нужное время и воскрешаешь юнита с локальным номером.
Тут восстанавливать нечего, вся карта состоит из нулей, т.е её стер редактор на диске собрался из оперативки записать заного да неуспел, гг. Ищи в папке с JNGP бекапы, он автоматом сохраняет бекап после каждого сохранения карты в редакторе.
BartSi, очень странно.
Нашёл проблему. В редакторе ландшафта нужно выбрать Camera Palette (там где юниты, декорации и прочее) выбрать первую строчку (камера без имени) и удалить. Тогда проблема решится. Сбросил триггеры и удалил камеру.
Ошибка из-за того, что у камеры почему-то пустое имя. Из-за этого её переменная оканчивается на _, что нельзя в JASS.
Смотри карту: xgm.guru/files/100/219921/comments/408338/0.w3x
Там для героев созданы их копии с другой моделью и нестандартные способности на основе способности Тёмный, которая заменяет юнита на указанного другого. Такой вариант не меняет имя героя, порядок предметов в инвентаре, кулдаун на предметах и способностях, но что-то упоминали ранее о возможных глюках с наложенными заклинаниями. Триггерно при использовании способности не на иллюзии героя добавляем ему нестандартную способность нужного типа.
Вариант с заменой юнита, примерно как ты описал, приведёт к сбросу имени, опыта, способностей, кулдаунов, предметов и заклинаний.
Вариантом морфа героя через руны не умею пользоваться.
Вариант с заменой текстуры персонажа через способность Вырвать дерево требует замены текстур деревьев в карте, а это плохо, так как героев много. Ещё это подразумевает умение работать с 3D-редакторами, которого, как предполагаю, у тебя нет.
Конечно можно! Для этого надо в поле "авторы" ресурса указать автора оригинального материала и поместить ссылку на оригинальный материал в соответствующее поле.
Пример: xgm.guru/p/cp2077/better-minimap
Если вы как-либо модифицировали этот материал, в поле "авторы" можно через | дописать и свой никнейм.
Стоит помнить, если автор обратится к нам с просьбой удалить ресурс - нам придется снять такой ресурс с публикации и убрать видимость. Но это не будет считаться нарушением правил.
Важно: Это касается только открытых материалов. Если вы его купили и/или там есть явный запрет на распространение - не стоит загружать такие материалы к нам на сайт без уточнения у Администрации.
По поводу материалов, используемых внутри модов или карт - нужно завести спец. раздел/квест/титры и перечислить их там в нужных категориях.
Ваш ресурс не прошёл автомодерацию. Пожалуйста, внесите исправления или ожидайте проверки модератором.
Причина
Длина текста: 131, а требуется не менее 400
Условия прохождения автомодерации:
Описание вакансий должно быть подробным: опишите требования к знаниям и умениям, чем человек будет заниматься и что вы предлагаете со своей стороны. Подробнее про вакансии и найм
Your resource has not passed automoderation. Please make corrections or wait for the moderator to check.
Reason
Text length is: 131, but required not less than 400
через obj не над там копируються вершины а то и несколько раз и слои слепляются в 1,3ds и через милкшарп,еси напрямую в мделвис то uv будет зекальна по y,а лутше перкинуть через макс(еси есть)
ну полигонам то укладывайся в 10к на супер хд моделей
материал ты не как не перенесешь только текстуру
материалы для вара создаются в warcraft model editor
Без конкретной модели сложно что-то точно сказать, но судя по ошибкам, очень похоже, что сцена экспортируется в формате mdx1000, поэтому War3ME на ней и сыпется. Если это так, то поможет отключение галочки Use SkinWeights при экспорте, либо использование War3 Model Editor v1.08 beta, который умеет открывать новые форматы.
открыть в War3ModelEditor и там натягивать текстуры
Текстуры прекрасно натягиваются в самом блендере, во вкладке MDL Material Settings. И в обеих всериях ретеры тоже.
» WarCraft 3 / Движение по объектам.
» WarCraft 3 / ИИ
» WarCraft 3 / Блики на поверхности модели?
» WarCraft 3 / Отряды
» WarCraft 3 / Ошибка сохранения карты
» WarCraft 3 / Помогите сделать триггер
» WarCraft 3 / Помогите с триггером
» WarCraft 3 / о патче
» WarCraft 3 / Погода
» WarCraft 3 / Пассивные способности через сферы
» WarCraft 3 / как создать задание
» WarCraft 3 / Legends of the Sands 1.63F
» WarCraft 3 / Триггерное нанесение урона от способности
» WarCraft 3 / Способность "сторожевая сова"
» WarCraft 3 / Музыка через "звук"
» WarCraft 3 / Респавн мобов
» WarCraft 3 / Помогите снять защиту с карты!
» WarCraft 3 / Помогите вспомнить карту
» WarCraft 3 / Помогите "восстановить" карту
» WarCraft 3 / Можно вопрос задать?
» Solar3584 / Ищу художника
Описание вакансий должно быть подробным: опишите требования к знаниям и умениям, чем человек будет заниматься и что вы предлагаете со своей стороны. Подробнее про вакансии и найм
» WarCraft 3 / Проблемы с экспортом из Blender
» WarCraft 3 / Хэш-таблица и добавление юнита